package com.ehe.security.pojo.dto.appclient;


import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import java.util.HashSet;
import java.util.Set;

/**
 * 客户端应用 更新DTO
 * @author jerry
 */
@ApiModel(value = "客户端应用 更新DTO", description = "客户端应用 更新DTO")
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@ToString(callSuper = true)
@Accessors(chain = true)
public class AppClientModify{

    /** 认证类型 */
    @ApiModelProperty(value = "认证类型", position = 14)
    private Set<String> authorizedGrantTypes = new HashSet<>();

    /** 有效范围 */
    @ApiModelProperty(value = "有效范围", position = 16)
    private Set<String> scope = new HashSet<>();

    /** 资源id集合 */
    @ApiModelProperty(value = "资源id集合", position = 18)
    private Set<String> resourceIds = new HashSet<>();

    /** 客户端重定向 uri 路径 */
    @ApiModelProperty(value = "客户端重定向 uri 路径", position = 20)
    private Set<String> registeredRedirectUri = new HashSet<>();

    /** 客户端权限 */
    @ApiModelProperty(value = "客户端权限", position = 22)
    private Set<String> authorities = new HashSet<>();

    /** token 的有效时长 */
    @ApiModelProperty(value = "token 的有效时长", position = 24)
    private Integer accessTokenValiditySeconds;

    /** 刷新 token 的有效时长 */
    @ApiModelProperty(value = "刷新 token 的有效时长", position = 26)
    private Integer refreshTokenValiditySeconds;

    /** 附加信息 */
    @ApiModelProperty(value = "附加信息", position = 28)
    private String additionalInformation;

    /** 自动批准范围 */
    @ApiModelProperty(value = "自动批准范围", position = 30)
    private Set<String> autoApproveScope;

}